home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / SLAX 6.0.8 / slax-6.0.8.iso / slax / base / 006-devel.lzm / usr / include / libwmf / defs.h < prev    next >
Encoding:
C/C++ Source or Header  |  2007-02-16  |  8.5 KB  |  293 lines

  1. /* libwmf (<libwmf/defs.h>): library for wmf conversion
  2.    Copyright (C) 2000 - various; see CREDITS, ChangeLog, and sources
  3.  
  4.    The libwmf Library is free software; you can redistribute it and/or
  5.    modify it under the terms of the GNU Library General Public License as
  6.    published by the Free Software Foundation; either version 2 of the
  7.    License, or (at your option) any later version.
  8.  
  9.    The libwmf Library is distributed in the hope that it will be useful,
  10.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.    Library General Public License for more details.
  13.  
  14.    You should have received a copy of the GNU Library General Public
  15.    License along with the libwmf Library; see the file COPYING.  If not,
  16.    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  17.    Boston, MA 02111-1307, USA.  */
  18.  
  19.  
  20. #ifndef LIBWMF_DEFS_H
  21. #define LIBWMF_DEFS_H
  22.  
  23. /* PolyFill() Modes */
  24. #undef  ALTERNATE
  25. #define ALTERNATE           1
  26. #undef  WINDING
  27. #define WINDING             2
  28. #undef  POLYFILL_LAST
  29. #define POLYFILL_LAST       2
  30.  
  31. /* Brush Styles */
  32. #undef  BS_SOLID
  33. #define BS_SOLID            0
  34. #undef  BS_NULL
  35. #define BS_NULL             1
  36. #undef  BS_HOLLOW
  37. #define BS_HOLLOW     BS_NULL
  38. #undef  BS_HATCHED
  39. #define BS_HATCHED          2
  40. #undef  BS_PATTERN
  41. #define BS_PATTERN          3
  42. #undef  BS_INDEXED
  43. #define BS_INDEXED          4
  44. #undef  BS_DIBPATTERN
  45. #define BS_DIBPATTERN       5
  46. #undef  BS_DIBPATTERNPT
  47. #define BS_DIBPATTERNPT     6
  48. #undef  BS_PATTERN8X8
  49. #define BS_PATTERN8X8       7
  50. #undef  BS_DIBPATTERN8X8
  51. #define BS_DIBPATTERN8X8    8
  52.  
  53. #define TO_FILL(Z) ((Z)->dc->brush->lbStyle != BS_NULL)
  54.  
  55. /* Hatch Styles */
  56. #undef  HS_HORIZONTAL
  57. #define HS_HORIZONTAL       0       /* ----- */
  58. #undef  HS_VERTICAL
  59. #define HS_VERTICAL         1       /* ||||| */
  60. #undef  HS_FDIAGONAL
  61. #define HS_FDIAGONAL        2       /* \\\\\ */
  62. #undef  HS_BDIAGONAL
  63. #define HS_BDIAGONAL        3       /* ///// */
  64. #undef  HS_CROSS
  65. #define HS_CROSS            4       /* +++++ */
  66. #undef  HS_DIAGCROSS
  67. #define HS_DIAGCROSS        5       /* xxxxx */
  68.  
  69. /* Pen Styles */
  70. #undef  PS_SOLID
  71. #define PS_SOLID            0
  72. #undef  PS_DASH
  73. #define PS_DASH             1       /* -------  */
  74. #undef  PS_DOT
  75. #define PS_DOT              2       /* .......  */
  76. #undef  PS_DASHDOT
  77. #define PS_DASHDOT          3       /* _._._._  */
  78. #undef  PS_DASHDOTDOT
  79. #define PS_DASHDOTDOT       4       /* _.._.._  */
  80. #undef  PS_NULL
  81. #define PS_NULL             5
  82. #undef  PS_INSIDEFRAME
  83. #define PS_INSIDEFRAME      6
  84. #undef  PS_USERSTYLE
  85. #define PS_USERSTYLE        7
  86. #undef  PS_ALTERNATE
  87. #define PS_ALTERNATE        8
  88. #undef  PS_STYLE_MASK
  89. #define PS_STYLE_MASK       0x0000000F
  90.  
  91. #define TO_DRAW(Z) (((Z)->dc->pen->lopnStyle & PS_STYLE_MASK) != PS_NULL)
  92.  
  93. #undef  PS_ENDCAP_ROUND
  94. #define PS_ENDCAP_ROUND     0x00000000
  95. #undef  PS_ENDCAP_SQUARE
  96. #define PS_ENDCAP_SQUARE    0x00000100
  97. #undef  PS_ENDCAP_FLAT
  98. #define PS_ENDCAP_FLAT      0x00000200
  99. #undef  PS_ENDCAP_MASK
  100. #define PS_ENDCAP_MASK      0x00000F00
  101.  
  102. #undef  PS_JOIN_ROUND
  103. #define PS_JOIN_ROUND       0x00000000
  104. #undef  PS_JOIN_BEVEL
  105. #define PS_JOIN_BEVEL       0x00001000
  106. #undef  PS_JOIN_MITER
  107. #define PS_JOIN_MITER       0x00002000
  108. #undef  PS_JOIN_MASK
  109. #define PS_JOIN_MASK        0x0000F000
  110.  
  111. #undef  PS_COSMETIC
  112. #define PS_COSMETIC         0x00000000
  113. #undef  PS_GEOMETRIC
  114. #define PS_GEOMETRIC        0x00010000
  115. #undef  PS_TYPE_MASK
  116. #define PS_TYPE_MASK        0x000F0000
  117.  
  118. /* Object Definitions for EnumObjects() */
  119. #undef  OBJ_PEN
  120. #define OBJ_PEN             1
  121. #undef  OBJ_BRUSH
  122. #define OBJ_BRUSH           2
  123. #undef  OBJ_DC
  124. #define OBJ_DC              3
  125. #undef  OBJ_METADC
  126. #define OBJ_METADC          4
  127. #undef  OBJ_PAL
  128. #define OBJ_PAL             5
  129. #undef  OBJ_FONT
  130. #define OBJ_FONT            6
  131. #undef  OBJ_BITMAP
  132. #define OBJ_BITMAP          7
  133. #undef  OBJ_REGION
  134. #define OBJ_REGION          8
  135. #undef  OBJ_METAFILE
  136. #define OBJ_METAFILE        9
  137. #undef  OBJ_MEMDC
  138. #define OBJ_MEMDC          10
  139. #undef  OBJ_EXTPEN
  140. #define OBJ_EXTPEN         11
  141. #undef  OBJ_ENHMETADC
  142. #define OBJ_ENHMETADC      12
  143. #undef  OBJ_ENHMETAFILE
  144. #define OBJ_ENHMETAFILE    13
  145.  
  146. /* Text Alignment Options */
  147. #undef  TA_NOUPDATECP
  148. #define TA_NOUPDATECP       0
  149. #undef  TA_UPDATECP
  150. #define TA_UPDATECP         1
  151.  
  152. #undef  TA_LEFT
  153. #define TA_LEFT             0
  154. #undef  TA_RIGHT
  155. #define TA_RIGHT            2
  156. #undef  TA_CENTER
  157. #define TA_CENTER           6
  158.  
  159. #undef  TA_TOP
  160. #define TA_TOP              0
  161. #undef  TA_BOTTOM
  162. #define TA_BOTTOM           8
  163. #undef  TA_BASELINE
  164. #define TA_BASELINE        24
  165. #if (WINVER >= 0x0400)
  166. #undef  TA_RTLREADING
  167. #define TA_RTLREADING     256
  168. #undef  TA_MASK
  169. #define TA_MASK              (TA_BASELINE+TA_CENTER+TA_UPDATECP+TA_RTLREADING)
  170. #else
  171. #undef  TA_MASK
  172. #define TA_MASK              (TA_BASELINE+TA_CENTER+TA_UPDATECP)
  173. #endif
  174.  
  175. /* Binary raster ops */
  176. #undef  R2_BLACK
  177. #define R2_BLACK            1   /*  0       */
  178. #undef  R2_NOTMERGEPEN
  179. #define R2_NOTMERGEPEN      2   /* DPon     */
  180. #undef  R2_MASKNOTPEN
  181. #define R2_MASKNOTPEN       3   /* DPna     */
  182. #undef  R2_NOTCOPYPEN
  183. #define R2_NOTCOPYPEN       4   /* PN       */
  184. #undef  R2_MASKPENNOT
  185. #define R2_MASKPENNOT       5   /* PDna     */
  186. #undef  R2_NOT
  187. #define R2_NOT              6   /* Dn       */
  188. #undef  R2_XORPEN
  189. #define R2_XORPEN           7   /* DPx      */
  190. #undef  R2_NOTMASKPEN
  191. #define R2_NOTMASKPEN       8   /* DPan     */
  192. #undef  R2_MASKPEN
  193. #define R2_MASKPEN          9   /* DPa      */
  194. #undef  R2_NOTXORPEN
  195. #define R2_NOTXORPEN       10   /* DPxn     */
  196. #undef  R2_NOP
  197. #define R2_NOP             11   /* D        */
  198. #undef  R2_MERGENOTPEN
  199. #define R2_MERGENOTPEN     12   /* DPno     */
  200. #undef  R2_COPYPEN
  201. #define R2_COPYPEN         13   /* P        */
  202. #undef  R2_MERGEPENNOT
  203. #define R2_MERGEPENNOT     14   /* PDno     */
  204. #undef  R2_MERGEPEN
  205. #define R2_MERGEPEN        15   /* DPo      */
  206. #undef  R2_WHITE
  207. #define R2_WHITE           16   /*  1       */
  208. #undef  R2_LAST
  209. #define R2_LAST            16
  210.  
  211. /* Ternary raster operations */
  212. #undef  SRCCOPY
  213. #define SRCCOPY        (U32)0x00CC0020 /* dest = source                   */
  214. #undef  SRCPAINT
  215. #define SRCPAINT       (U32)0x00EE0086 /* dest = source OR dest           */
  216. #undef  SRCAND
  217. #define SRCAND         (U32)0x008800C6 /* dest = source AND dest          */
  218. #undef  SRCINVERT
  219. #define SRCINVERT      (U32)0x00660046 /* dest = source XOR dest          */
  220. #undef  SRCERASE
  221. #define SRCERASE       (U32)0x00440328 /* dest = source AND (NOT dest )   */
  222. #undef  NOTSRCCOPY
  223. #define NOTSRCCOPY     (U32)0x00330008 /* dest = (NOT source)             */
  224. #undef  NOTSRCERASE
  225. #define NOTSRCERASE    (U32)0x001100A6 /* dest = (NOT src) AND (NOT dest) */
  226. #undef  MERGECOPY
  227. #define MERGECOPY      (U32)0x00C000CA /* dest = (source AND pattern)     */
  228. #undef  MERGEPAINT
  229. #define MERGEPAINT     (U32)0x00BB0226 /* dest = (NOT source) OR dest     */
  230. #undef  PATCOPY
  231. #define PATCOPY        (U32)0x00F00021 /* dest = pattern                  */
  232. #undef  PATPAINT
  233. #define PATPAINT       (U32)0x00FB0A09 /* dest = DPSnoo                   */
  234. #undef  PATINVERT
  235. #define PATINVERT      (U32)0x005A0049 /* dest = pattern XOR dest         */
  236. #undef  DSTINVERT
  237. #define DSTINVERT      (U32)0x00550009 /* dest = (NOT dest)               */
  238. #undef  BLACKNESS
  239. #define BLACKNESS      (U32)0x00000042 /* dest = BLACK                    */
  240. #undef  WHITENESS
  241. #define WHITENESS      (U32)0x00FF0062 /* dest = WHITE                    */
  242.  
  243. /* StretchBlt() Modes */
  244. #undef  BLACKONWHITE
  245. #define BLACKONWHITE        1
  246. #undef  WHITEONBLACK
  247. #define WHITEONBLACK        2
  248. #undef  COLORONCOLOR
  249. #define COLORONCOLOR        3
  250. #undef  HALFTONE
  251. #define HALFTONE            4
  252. #undef  MAXSTRETCHBLTMODE
  253. #define MAXSTRETCHBLTMODE   4
  254.  
  255. #if(WINVER >= 0x0400)
  256. /* New StretchBlt() Modes */
  257. #undef  STRETCH_ANDSCANS
  258. #define STRETCH_ANDSCANS    BLACKONWHITE
  259. #undef  STRETCH_ORSCANS
  260. #define STRETCH_ORSCANS     WHITEONBLACK
  261. #undef  STRETCH_DELETESCANS
  262. #define STRETCH_DELETESCANS COLORONCOLOR
  263. #undef  STRETCH_HALFTONE
  264. #define STRETCH_HALFTONE    HALFTONE
  265. #endif /* WINVER >= 0x0400 */
  266.  
  267. /* Background Modes */
  268. #undef  TRANSPARENT
  269. #define TRANSPARENT         1
  270. #undef  OPAQUE
  271. #define OPAQUE              2
  272. #undef  BKMODE_LAST
  273. #define BKMODE_LAST         2
  274.  
  275. #undef  ETO_OPAQUE
  276. #define ETO_OPAQUE          0x0002
  277. #undef  ETO_CLIPPED
  278. #define ETO_CLIPPED         0x0004
  279. #if(WINVER >= 0x0400)
  280. #undef  ETO_GLYPH_INDEX
  281. #define ETO_GLYPH_INDEX     0x0010
  282. #undef  ETO_RTLREADING
  283. #define ETO_RTLREADING      0x0080
  284. #endif /* WINVER >= 0x0400 */
  285.  
  286. /* ExtFloodFill style flags */
  287. #undef   FLOODFILLBORDER
  288. #define  FLOODFILLBORDER    0
  289. #undef   FLOODFILLSURFACE
  290. #define  FLOODFILLSURFACE   1
  291.  
  292. #endif /* ! LIBWMF_DEFS_H */
  293.